home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Technotools
/
Technotools (Chestnut CD-ROM)(1993).ISO
/
lang_oth
/
lck21b
/
lck21b.doc
< prev
next >
Wrap
Text File
|
1989-11-14
|
13KB
|
385 lines
LCK Lisp Checker Version 2.1b Manual
AutoCAD and AutoLISP are registered trademarks of AutoDesk, Inc.
Turbo Pascal is a registered trademark of Borland International
PKZIP and PKUNZIP are registered trademarks of PKWARE
[ LCK Lisp Checker ]---------------------------------------------
A program written for running checks on AutoLISP files to check
the balance of parenthesis and double quotes (string literals).
LCK was introduced as shareware software for use with AutoCAD.
You may copy and distribute these files freely provided (a) no
fee is charged and (b) all of the files are distributed together
in their original, unmodified form. Please use the LCK21.ZIP file
for uploading to bulletin boards and such.
If you like LCK and find it useful, your $15 registration fee
would be greatly appreciated. A registration form is provided in
the file REGISTER.NOW. Registered owners will be notified of
future releases. Updates of LCK 2.1 will be made available to all
registered owners for the cost of materials, shipping and
handling (i.e $5) or the difference in list price.
Please remember that LCK is not "freeware". If you use LCK, you
must register. The trial period is strictly limited to no more
than two weeks.
[ Disclaimer ]---------------------------------------------------
There is no warranty for LCK, expressed or implied.
CAD/Engineering Services and Stan H. Bimson assumes no liability
for damages, direct or consequential, which may result from use
of LCK. Use at your own risk!
[ Supplied Files ]-----------------------------------------------
LCK .EXE Lisp checker
LCK .DOC This doc file
ERROR .LSP A Lisp program on how to handle error messages
OSNAP .LSP A Lisp program with new OSnap commands
JUNK .LSP A Lisp program with errors
REGISTER.NOW Registration form
[ Installation ]-------------------------------------------------
Installation is simple, LCK does not require any configuration.
To be able to use LCK from anywhere from within your system,
place the LCK.EXE file in a sub-directory that is on your current
PATH.
Copyright 1987 CAD/ES Page 1 of 6
LCK Lisp Checker Version 2.1b Manual
To use LCK from within AutoCAD add the following statement line
to your ACAD.PGP file:
lck,lck,65536,*LCK (enter filename): ,0
[ System Requirements ]------------------------------------------
LCK will only work on a system with a color monitor. Color is
used as a debugging tool. Programs that allow some color programs
to run on monochrome monitors will not work with LCK as text is
written directly to memory address for the color text area
bypassing DOS or BIOS calls.
[ Program Operation ]--------------------------------------------
PARENTHESIS
15 colors in alternating groups of non-blinking and blinking are
used to denote or display the level of parenthesis. The opening
and closing parenthesis have the same color. When the end of a
code segment is reached unbalanced parenthesis will be noted. If
parenthesis are balanced the statement CODE OKAY is shown.
COMMENTS
When ever and where ever a semicolon is found, the semicolon and
the rest of the line is considered a comment. Comments are
displayed in the color dark cyan.
STRING LITERALS
When a quoted ("") string is found, the quote and all the
characters that follow until another quote is encountered is
considered to be a string literal. String literals have to end on
the line that they start on. String literals are displayed in the
color light gray. If the program reaches the end of the code line
and it has not encountered another quote a string error occurs,
an error message is displayed at the end of the line. When a
string or quote error has occurred, it can, as it does within
AutoCAD, unbalance the parenthesis. Correct the quote error and
rerun LCK to complete the code checking.
NOTE: Text editors that put a carriage return and line feed
(ASCII 13 and 10) in the text file for the end of line, can fake
the AutoLISP interpreter. A string CAN continue from one line to
the next. The double character code is read in as "\n", a single
carriage return would be read as "\r". This is all in compliance
with AutoLISP as these control characters are interpreted as
being within a string. I feel this is not good coding practice
and LCK does not support strings that continue on two or more
lines.
Copyright 1987 CAD/ES Page 2 of 6
LCK Lisp Checker Version 2.1b Manual
CODE
Is displayed in the color dark green, all code exceptions have
been noted. A line of code, with or without comments may be up
to 255 characters. Long lines are rapped in the display without
incrementing line numbers.
STATUS LINE
Line count is given on the left side of line 25. Parenthesis are
counted and the difference of the left minus right is displayed
on line 25. Quotes are noted as E for even or U for unbalanced.
[ Syntax ]-------------------------------------------------------
LCK [d:][path]filename[.ext] [/switches]
The file name extension is ONLY required if the AutoLISP file
does not have the extension of .LSP.
LCK junk
Or:
LCK
LCK will stop and ask for a file name.
/switches
Switches cause a change in LCK's operation.
/S
Scroll screen 23 lines (max) at a time. The screen scroll still
stops at the end of code segment or the end of the file. Scroll
count restarts after each end of code segment.
/NC
No comment display, this covers only the comments that start
within a code line.
/NA
Remove all comments whether they start at the end of a code
segment or the beginning of a line. Line numbers which are shown
on the left side of screen are shown correctly. Removed comment
lines do not change line numbers.
Switches can be combined in the form:
/SNC or /NCS Scroll set to 23 and delete line comments
Copyright 1987 CAD/ES Page 3 of 6
LCK Lisp Checker Version 2.1b Manual
/SNA or /NAS Scroll set to 23 and delete all comments
/NANC or /NCNA ? Use one or the other, not both, only the first
condition will be in affect
[ Lisp code requirements ]---------------------------------------
There are several code or file structure requirements for LCK. We
are not trying to tell or instruct you in how to format your Lisp
code.
LCK needs to know what is considered a complete code segment. The
following are the code format requirements that LCK will follow.
For LCK to know the end of a section of code that is to be
checked:
(A) Place a blank line between the code segments.
; Is it a string ?
(DeFun TestForStr(st)
(= (Type st) 'STR)
)
; Is it a List ?
(DeFun TestForLst(Lst)
(= (Type Lst) 'LIST)
)
(B) Place a single semicolon between the code segments.
; Is it a string ?
(DeFun TestForStr(st)
(= (Type st) 'STR)
)
;
; Is it a List ?
(DeFun TestForLst(Lst)
(= (Type Lst) 'LIST)
)
Tab Characters
If your text editor inserts a tab character (ASCII 9) instead of
expanding with space characters be forewarned that LCK will only
expand the tab to a single space. This may cause the displayed
code not to look like how you formatted it.
Copyright 1987 CAD/ES Page 4 of 6
LCK Lisp Checker Version 2.1b Manual
[ Parting Comments ]---------------------------------------------
I would be pleased to hear any comments on this program be they
bad or good, I am not a professional programmer but a freelance
structural steel draftsman that uses AutoCAD. I program heavily
into AutoLISP and as you see by this program, in Turbo Pascal. I
feel that this program is a very good aid for any level of
AutoLISP programmer.
As many people have found out, my business and home telephone is
one in the same. I wish to thank these people for calling at a
reasonable hour (at my end). People who have called on Saturday
and Sunday have occasionally have found me "out". If you call and
I am "out", please give who ever answers the telephone some idea
of why you called. My wife and children can not answer questions
about LCK, Pascal or AutoLISP, but they take good messages and
generally know when I will be back.
In all these years I have only received one (1) call about a
"bug" in LCK, I do return calls covering "bug" reports. If you
experience some problem with LCK please re-read this manual
before calling, I have had many calls because people do not
follow the two simple forms of code formatting.
Some people have just called to "shoot the breeze" about a LISP
program I have written, they have or are writing, AutoLISP in
general, AutoCAD, Pascal or structural steel detailing. I don't
really mind these calls, I need a break once and while and have
even learned more than I have given, but I do have to work.
Calling on the weekend doesn't help, I don't sit around the house
or watch TV. It's Boy Scouts, yard work, my family, beta testing
(someone else's program), programming (my own), or something.
It's "catch as catch can" most of the time.
I can be reached at two bulletin boards:
The AutoDesk forum on CompuServe, user ID# 73507,3475, I call
every Saturday morning (once a week) unless I have message
replies to send.
OR
The EET BBS, Nashville, TN. Telephone (615) 353-3476, which I
call everyday or every other day.
National AutoCAD Echo or National CAD/M Echo:
If your local BBS carries either of these National Echos, I check
both as EET carries both.
Mailing Addresses: Telephone:
CAD/Engineering Services (615) 824-4938
1038 Forest Harbor Drive
Hendersonville, TN 37075-9646 USA
Copyright 1987 CAD/ES Page 5 of 6
LCK Lisp Checker Version 2.1b Manual
[ Distribution Disk ]--------------------------------------------
Distribution disk and upgrade disk have the files noted in the
section Supplied Files. These files are found in the root
directory of the diskette.
The Supplied Files do not take up much disk space. I really hate
to send out a diskette with all that empty space so there is
usually a sub-directory named EXTRAS. In this directory are files
that I find of interest to me, either for DOS operations or my
dealing with AutoCAD or AutoLISP.
These programs are public domain, some have documentation and
some don't. I don't support these programs in anyway, nor do I
take any liability for them, all the risk is incurred by the
user. These files change from time to time so no documentation
list is given.
[ Version Notation ]---------------------------------------------
2.1b Copy distributed to AutoCAD BBS and CompuServe
2.1z Registered user copy
End of Manual
Copyright 1987 CAD/ES Page 6 of 6